﻿using System;

namespace _44_检查枚举实例中是否包含某个标志位_枚举
{
    class Program
    {
        static void Main(string[] args)
        {
            Test t = Test.mode2 | Test.mode3;
            //使用HasFlag方法检查变量中是否包含mode3标志位
            bool b = t.HasFlag(Test.mode3);
            Console.WriteLine("是否包含Mode3 ？ {0}", b ?"是":"否");

            //再声明一个变量，将三个常量组合
            Test t2 = Test.Mode1 | Test.mode2 | Test.mode3;
            //通过按位”与“运算来检查变量中是否包含model标志位
            bool b3 = (t2 & Test.Mode1) == Test.Mode1;
            Console.WriteLine("是否包含mode11 ? {0}", b ?"是":"否");

            Console.Read();


        }
        [Flags]
        enum Test
        {
            Mode1,mode2,mode3
        }
    }
}
